body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
	margin:0;
	padding:0;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
fieldset,img {
	border:0;
}
address,caption,cite,code,dfn,em,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym { border:0;
}

@media (max-width: 900px) {
	.toc-container {
		display: none;
	}

	#content .posts li span.category {
		display: none;
	}

	#content .posts li a {
		display: block;
	}
}


html {
	overflow-x:hidden;
	overflow-y:scroll;
}
body {
	font-family:Helvetica, Arial, "Hiragino Sans GB", sans-serif;
	-webkit-text-size-adjust: none; /* 禁止 Safari 自动调整字体，会影响到代码段的表现 */
	background: #f4f4f4;
	color: rgba(0, 0, 0, 0.8);
}
h2, h3, h4, h5, h6 {
	color:#333333;
}
p, h2, h3, h4, h5, h6, ul {
	margin:0;
}
a {
	color:#000000;
	text-decoration:none;
}

p a {
	text-decoration:underline;
}

a img {
	vertical-align:middle;
}
span#eighty {
	color:#007236;
}
span#beans {
	color:#72BF44;
}
a:hover, a:hover span#eighty, a:hover span#beans {
	color:#444444;
}
h1 a:hover {
	color:#ddd;
}

#nav {
	overflow: hidden;
	background: #2f2f2f;
	height: 46px;
}

#logo {
	padding: 8px;
	float: left;
}

#logo a {
	display: block;
	float: left;
}

#logo img {
	text-align: center;
	width: 30px;
	height: 30px;
	line-height: 46px;
	text-decoration:none;
}

#nav ul {
	float: left;
	line-height: 46px;
}

#nav li {
	float: left;
	padding: 0 13px;
}

#nav li a {
	color: #fff;
}

div.wrapper {
	overflow: hidden;
	font-size:14px;
	max-width: 700px;
	margin: 0 auto;
}

.wrapper.main {
	background: white;
    box-shadow: 0 1px 4px rgba(0,0,0,.04);
    border: 1px solid rgba(0,0,0,.09);
}

#intro {
    padding: 15px;
    margin: 15px 15px 0;
}

#content a {
	font-weight:bold;
}
#content .cnt {
	margin-bottom:10px;
}
#content .posts li a {
	font-weight:normal;
	text-overflow: ellipsis;
	/* display: block; */
	overflow: hidden;
	white-space: nowrap;
}

#content .posts li span.category {
	background: #f4f4f4;
	font-size: 12px;
	padding: 4px 6px;
	border-radius: 4px;
	color: #666;
	vertical-align: middle;
}

#content .posts li a:hover {
	text-decoration: underline;
}

div#content img, div#content object {
	-moz-border-radius:5px 5px 5px 5px;
	-webkit-border-radius:5px;
	border-radius:5px;
	-moz-box-shadow:0 1px 0 #FFFFFF;
	width: 100%;
	height: 100%;
}
div#content li {
	list-style:disc;
	margin-left:10px;
	line-height:170%;
}

div#content ol li {
	list-style: decimal;
}

div#content .cnt li {
	margin:5px 5px 5px 30px;
}
div#header {
	font-size:13px;
	margin:0 0 45px;
}
div#header ul {
	float:right;
	margin:0;
}
div#header li {
	float:left;
	margin:0 0 0 20px;
}
div#footer {
	margin:25px 0 25px;
}
div#footer #feed {
	float:right;
}
div#content ul.posts li {
	margin: 0px -15px 0px;
    font-size: 16px;
    list-style: none;
    border-bottom: 1px solid rgba(0,0,0,.09);
    padding: 10px 15px;
}

p.nav {
	color:#000;
	font-size:18px;
	font-weight:bold;
	margin:30px 0 10px;
}

p.nav + ul, p.nav + ul a, p.nav + div, p.nav + div a {
	color:#000;
}

p.nav + ul, p.nav + div {
	margin:0;
}

p code {
	background: #eee;
	border: 1px solid #ccc;
	border-radius: 5px;
	padding: 3px 6px;
	margin: 0 3px;
}

ul.posts li a {
	color:#000;
}

ul.index li {
	list-style:circle inside none;
	padding:0 0 10px 5px;
}

ul.posts li .date {
	float:right;
	color:#999;
	font-size:12px;
	margin:0;
}

/* table start */
table {
    border-spacing: 0;
    border-collapse: collapse
}

td,th {
    padding: 0
}

.wrapper table {
    display: block;
    width: 100%;
    overflow: auto;
    word-break: normal;
    word-break: keep-all
}

.wrapper table th {
    font-weight: bold
}

.wrapper table th,.wrapper table td {
    padding: 6px 13px;
    border: 1px solid #ddd
}

.wrapper table tr {
    background-color: #fff;
}

.wrapper table tr:nth-child(2n) {
    background-color: #f8f8f8
}
/* table end*/

h2, h3, h4, h5, h6 {
	font-weight:900;
	line-height:100%;
}

h1 {
	font-size: 1.5em;
	font-weight: bold !important;
}

h2 {
	font-size: 1.3em;
	font-weight: bold !important;
	margin-top: 25px;
}

h3 {
	font-size: 1.2em;
}

h4, h5, h6 {
	font-size: 1em;
	margin:20px 0;
}

li ul {
	margin:10px 0 10px 20px;
}

div#content .cnt li ul li {
	list-style:circle;
	margin-left: 15px;
}

.index h2 {
	margin-bottom:50px;
}
.cnt h1, .cnt h2, .cnt h3, .cnt h4, .cnt h5, .cnt h6 {
	margin-top: 20px;
    font-weight: 300;
    color: #574c4c;
    padding-bottom: 5px;
    border-bottom: 1px solid #ddd;
}

#content .cnt h3 {
	background: #eee;
	padding: 15px;
	margin: 20px -15px;
	border: 0;
	color: #000;
}

#content .cnt h4 {
	font-size: 1.2em;
	color: #000;
}

#content {
	font-size: 16px;
	padding: 0 15px;
}

ul.columns {
	-moz-column-gap:20px;
	-moz-column-width:215px;
}
.small, p.date, p#footnote, p#footnote a, del, del a {
	color:#888888;
}
.small, p#footnote {
	font-size:13px;
}
hr {
	clear:both;
	border:0;
	border-top:1px solid #999;
	margin: 0 -20px;
}
code, pre {
	font-family:"Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace;
	font-size:14px;
	line-height:150%;
}
pre {
	-moz-border-radius:5px 5px 5px 5px;
	-webkit-border-radius:5px;
	border-radius:5px;
	-moz-box-shadow:0 -1px 0 #444444;
	background-color:#222222;
	color:#DDDDDD;
	font-size:14px;
	padding:20px;
	text-shadow:0 1px 0 #000000;
	white-space:pre-wrap;
	word-wrap:break-word;
}
div.notice {
	-moz-border-radius:5px 5px 5px 5px;
	-webkit-border-radius:5px;
	border-radius:5px;
	-moz-box-shadow:0 -1px 0 #FFFDDD;
	background-color:#FFFBBB;
	margin:0 0 5px -40px;
	padding:20px;
	text-shadow:0 1px 0 #DDDAAA;
	width:740px;
}
.highlight {
	margin: 10px 0 20px 0;
}
cite {
	font-style: italic;
    color: #999999;
}
em {
	font-style:italic;
}
blockquote {
	background: #ddd;
    border-left: 5px solid #ccc;
    padding: 15px 20px;
    margin-top: 10px;
    border-left: 5px solid #657b83;
    background: #f6f6f6;
}

#content .cnt blockquote p {
	margin: 0;
	padding: 10px 0;
}

p.article_date {
	float:left;
	margin:0;
}
span#article_buttons {
	float:right;
	margin:20px 0;
	text-align:right;
}
span#article_buttons a {
	display:block;
}
span.balloon {
	-moz-border-radius: 5px 5px 5px 5px;
	-moz-webkit-radius: 5px 5px 5px 5px;
	border-radius: 5px;
	-moz-box-shadow:0 -1px 0 #444444;
	background-color:#222222;
	color:#FFFFFF;
	display:inline-block;
	font-size:10px;
	font-weight:500;
	line-height:16px;
	margin:0 5px;
	padding:2px 5px;
	text-shadow:0 1px 0 #000000;
}

#content.index {
	overflow:hidden;
}

#main {
	margin: 15px 0;
}

#main .posts {
	margin-top:-5px;
}

#main h1 {
	color: #444444;
    font-size: 24px;
    font-weight: bold;
    margin: 8px 0 18px;
    padding: 10px;
	-moz-border-radius:5px;
	-webki-border-radius:5px;
	border-radius:5px;
	background:#ddd;
}

#tags {
	float: right;
	margin: 15px 0;
	color: #999;
	font-size: 13px;
	font-weight: bold;
}

#content .cnt p {
	margin: 20px 0;
	line-height: 1.8;
}

#content .cnt li p {
  margin: 0 !important;
}

#feed .badget {
	line-height:100%;
	border:1px solid #999;
	background:#ddd;
	font-size:11px;
	border-radius:3px;
	-webkit-border-radius:3px;
	-moz-border-radius:3px;
	margin-left:8px;
	float:left;
}

#feed .service {
	margin-right:2px;
	display:inline-block;
	border-right:1px solid #999;
	padding:4px;
}

#feed .info {
	padding:0 4px 0 0;
}

#content p.via {
	text-align:right;
	color:#999;
	margin-top: -20px;
}

/* for the highlight syntax ╮(╯▽╰)╭ */
.cnt pre,
.cnt .highlight {
  background: #272822;
  margin: 10px 0;
  padding: 10px 10px;
  overflow: auto;
  color: #4c4c4c;
  line-height: 22.400000000000002px;
}
.cnt .highlight .gutter pre,
.cnt .gist .gist-file .gist-data .line-numbers {
  color: #666;
}
.cnt pre,
.cnt code {
  font-family: "Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace;
}
.cnt code {
  background: #eee;
  padding: 0 0.3em;
  border: none;
}
.cnt pre {
  color: #fff;
}
.cnt pre code {
  background: none;
  text-shadow: none;
  padding: 0;
  color: #fff;
}
.cnt .highlight {
  -webkit-border-radius: 4px;
  border-radius: 4px;
}
.cnt .highlight pre {
  border: none;
  margin: 0;
  padding: 0 14px 0 0;
}
.cnt .highlight table {
  margin: 0;
  width: auto;
}
.cnt .highlight td {
  border: none;
  padding: 0;
}
.cnt .highlight figcaption {
  font-size: 0.85em;
  color: highlight-comment;
  line-height: 1em;
  margin-bottom: 1em;
}
.cnt .highlight figcaption:before,
.cnt .highlight figcaption:after {
  content: "";
  display: table;
}
.cnt .highlight figcaption:after {
  clear: both;
}
.cnt .highlight figcaption a {
  float: right;
}
.cnt .highlight .gutter pre {
  text-align: right;
  padding-right: 20px;
}
.cnt .highlight .gutter pre .line {
  text-shadow: none;
}
.cnt .highlight .line {
  font-size: 15px;
  height: 15px;
}
.cnt .gist {
  margin: 0 -20px;
  border-style: solid;
  border-color: #ddd;
  border-width: 1px 0;
  background: #272822;
  padding: 15px 20px 15px 0;
}
.cnt .gist .gist-file {
  border: none;
  font-family: "Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace;
  margin: 0;
}
.cnt .gist .gist-file .gist-data {
  background: none;
  border: none;
}
.cnt .gist .gist-file .gist-data .line-numbers {
  background: none;
  border: none;
  padding: 0 20px 0 0;
}
.cnt .gist .gist-file .gist-data .line-data {
  padding: 0 !important;
}
.cnt .gist .gist-file .highlight {
  margin: 0;
  padding: 0;
  border: none;
}
.cnt .gist .gist-file .gist-meta {
  background: #272822;
  color: highlight-comment;
  font: 0.85em "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-shadow: 0 0;
  padding: 0;
  margin-top: 1em;
  margin-left: 20px;
}
.cnt .gist .gist-file .gist-meta a {
  color: #258fb8;
  font-weight: normal;
}
.cnt .gist .gist-file .gist-meta a:hover {
  text-decoration: underline;
}
pre .comment {
  color: #75715e;
}
pre .keyword,
pre .function .keyword,
pre .class .params {
  color: #66d9ef;
}
pre .tag,
pre .doctype,
pre .params,
pre .function,
pre .css .value {
  color: #fff;
}
pre .css ~ * .tag,
pre .title,
pre .at_rule,
pre .at_rule .keyword,
pre .preprocessor,
pre .preprocessor .keyword {
  color: #f92672;
}
pre .attribute,
pre .built_in,
pre .class,
pre .css ~ * .class,
pre .function .title {
  color: #a6e22e;
}
pre .value,
pre .string {
  color: #e6db74;
}
pre .number {
  color: #7163d7;
}
pre .id,
pre .css ~ * .id {
  color: #fd971f;
}

pre {
    counter-reset: line-numbering;
    border: solid 1px #d9d9d9;
    border-radius: 0;
    background: #fff;
    padding: 0;
    line-height: 23px;
    margin-bottom: 30px;
    white-space: pre;
    overflow-x: auto;
    word-break: inherit;
    word-wrap: inherit;
}

pre a::before {
  content: counter(line-numbering);
  counter-increment: line-numbering;
  padding-right: 1em; /* space after numbers */
  width: 25px;
  text-align: right;
  opacity: 0.7;
  display: inline-block;
  color: #aaa;
  background: #eee;
  margin-right: 16px;
  padding: 2px 10px;
  font-size: 13px;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

pre a:first-of-type::before {
  padding-top: 10px;
}

pre a:last-of-type::before {
  padding-bottom: 10px;
}

pre a:only-of-type::before {
  padding: 10px;
}

#content ul#doing {
	list-style: none;
	padding-top: 30px;
}

#content ul#doing li {
	padding: 0 0 30px;
	list-style: none;
	position: relative;
	margin: 0;
}

#content ul#doing .tail {
	position: absolute;
	left: 5px;
	top: 0;
	height: 100%;
	border-left: 2px solid #e9e9e9;
}

#content ul#doing .head {
	position: absolute;
	width: 8px;
	height: 8px;
	background-color: #fff;
	border-radius: 100px;
	border: 2px solid transparent;
	border-color: #2db7f5;
	color: #2db7f5;
}

#content ul#doing .content {
	font-size: 14px;
	padding-left: 32px;
	position: relative;
}

#content ul#doing h3 {
	font-size: 22px;
	background: none;
	margin: 0;
	padding: 0;
}

#content ul#doing ul.item {
	margin: 13px 0;
}

#content ul#doing ul.item li{
	margin: 0 0 8px 20px;
	padding-left: 4px;
	list-style: circle;
	padding: 0;
}
/*toc*/
.toc-container {
	position: fixed;
	top: 80px;
	margin-left: -235px;
	width: 220px;
}
.toc-container ul {
	margin-left: 0;
}
.toc-container li a {
	height: 30px;
	overflow: hidden;
	display: block;
	white-space: nowrap;
    text-overflow: ellipsis;
}